<?php

/**
 * This is the model class for table "anggota".
 *
 * The followings are the available columns in table 'anggota':
 * @property string $ID_ANGGOTA
 * @property string $NO_ANGGOTA
 * @property string $NAMA
 * @property string $TANGGAL_MASUK
 * @property string $ALAMAT
 * @property string $TELEPHONE
 */
class Anggota extends CActiveRecord
{
	/**
	 * Returns the static model of the specified AR class.
	 * @param string $className active record class name.
	 * @return Anggota the static model class
	 */
	public static function model($className=__CLASS__)
	{
		return parent::model($className);
	}

	/**
	 * @return string the associated database table name
	 */
	public function tableName()
	{
		return 'anggota';
	}

	/**
	 * @return array validation rules for model attributes.
	 */
	public function rules()
	{
		// NOTE: you should only define rules for those attributes that
		// will receive user inputs.
		return array(
			//array('NAMA, TANGGAL_MASUK, ALAMAT, TELEPHONE', 'required'),
			array('NAMA', 'length', 'max'=>50),
			array('ALAMAT', 'length', 'max'=>100),
			array('TELEPHONE', 'length', 'max'=>35),
			// The following rule is used by search().
			// Please remove those attributes that should not be searched.
			array('ID_ANGGOTA, NO_ANGGOTA, NAMA, TANGGAL_MASUK, ALAMAT, TELEPHONE, STATUS_PEGAWAI, STATUS', 'safe', 'on'=>'search'),
		);
	}

	/**
	 * @return array relational rules.
	 */
	public function relations()
	{
		// NOTE: you may need to adjust the relation name and the related
		// class name for the relations automatically generated below.
		return array(
			'pinjaman'=>array(self::HAS_MANY,'Pinjaman','ID_ANGGOTA'),
			'tabungan'=>array(self::HAS_MANY,'Tabungan','ID_ANGGOTA'),
			'historitabungan'=>array(self::HAS_MANY,'HistoryTabungan','ID_ANGGOTA'),
			'status'=>array(self::HAS_ONE,'StatusPegawai',array('ID_STATUS_PEGAWAI'=>'STATUS_PEGAWAI')),
		);
	}

	/**
	 * @return array customized attribute labels (name=>label)
	 */
	public function attributeLabels()
	{
		return array(
			'ID_ANGGOTA' => 'Id Anggota',
			'NAMA' => 'Nama',
			'TANGGAL_MASUK' => 'Tanggal Masuk',
			'ALAMAT' => 'Alamat',
			'TELEPHONE' => 'Telephone',
			'STATUS_PEGAWAI'=>'Status Pegawai'
		);
	}

	/**
	 * Retrieves a list of models based on the current search/filter conditions.
	 * @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions.
	 */
	public function search()
	{
		// Warning: Please modify the following code to remove attributes that
		// should not be searched.

		$criteria=new CDbCriteria;

		$criteria->compare('ID_ANGGOTA',$this->ID_ANGGOTA,true);
		$criteria->compare('NAMA',$this->NAMA,true);
		$criteria->compare('TANGGAL_MASUK',$this->TANGGAL_MASUK,true);
		$criteria->compare('ALAMAT',$this->ALAMAT,true);
		$criteria->compare('TELEPHONE',$this->TELEPHONE,true);

		return new CActiveDataProvider($this, array(
			'pagination' => array(
				'pageSize'=> Yii::app()->user->getState('pageSize',Yii::app()->params['defaultPageSize']),
			),
			'criteria'=>$criteria,
		));
	}
}